<template>
	<view>
		<view style="margin-left: 20px;width: 100%;">{{ value }}</view>
		<u-datetime-picker :show="visible" :value="value" :minDate="minDate" :maxDate="maxDate" mode="date"
			@confirm="confirm" @cancel="$emit('update:visible', false)">
		</u-datetime-picker>
	</view>
</template>

<script>
	import dayjs from '@/uni_modules/uview-ui/libs/util/dayjs.js'
	export default {
		props: {
			// 窗口外部开关
			visible: {
				type: Boolean,
				default: false
			},
			// 创建、修改时的数据
			value: {
				type: [Object, String],
				default: ''
			},
		},
		computed: {
			/**
			 * @example 最小时间,明天
			 * @returns {Number} 明天的传入时间戳
			 */
			minDate() {
				const tomorrow = dayjs().add(1, 'day')
				console.log('明天',dayjs(tomorrow).format('YYYY-MM-DD'),tomorrow.unix())
				return tomorrow.valueOf()
			},
			/**
			 * @example 最大时间,下月
			 * @returns {Number} 下月传入时间戳
			 */
			maxDate() {
				const nextMonth = dayjs().add(31, 'day')
				return nextMonth.valueOf()
			},
		},
		methods: {
			/**
			 * @example 确认选择时间
			 */
			confirm({ value }) {
				const day = dayjs(value).format('YYYY-MM-DD')
				this.$emit('confirm', day)
				this.$emit('input', day)
				this.$emit('update:visible', false)
				return day
			}
		}
	}
</script>